@Ineverleft
2年前 提问
1个回答

工控DNP3协议有哪些安全问题

趣能一姐
2年前

工控DNP3协议有以下安全问题:

  • 缺少认证:认证的目的是保证收到的信息来自合法的用户,未认证用户设备发送的命令不会被执行。在DNP3的通信过程中,没有任何认证方面的相关定义,攻击者只要找到一个合法地址即可使用功能码建立DNP3通信会话,从而扰乱控制过程。

  • 缺少授权:授权保证不同的特权操作由拥有不同权限的认证用户来完成,这样可以降低误操作与内部攻击的概率。目前DNP3没有基于角色的访问控制机制,也没有对用户进行分类,没有对用户的权限进行划分,这样任意用户可以执行任意功能。

  • 缺乏加密:加密可以保证通信过程中双方的信息不被第三方非法获取。在DNP3协议的通信过程中,地址和命令全部采用明文传输,因此数据可以很容易地被攻击者捕获和解析,为攻击者提供便利。

  • 协议复杂性:除缺乏认证、授权和加密等安全防护机制之外,协议的相对复杂性也是DNP3中存在的安全问题的主要根源。

  • 设计安全问题:应用开发者在使用DNP3设计应用功能的同时应该考虑其功能实现之后导致的安全问题。保证DNP3使用的设计安全性能够处理应用中会出现的各种异常响应以及非法操作等问题,充分保障应用程序的健壮性。

  • 功能码滥用:功能码是DNP3中一项重要的内容,几乎所有通信都涉及功能码。功能码滥用也是导致网络异常的一个主要因素。例如需要引起IDS/IPS开发人员高度关注的一些DNP3消息:关闭主动上送;在DNP3端口上运行非DNP3通信;长时间多重主动上送(响应风暴);授权客户冷重启;未授权客户冷重启;停止应用;热重启;重新初始化数据对象;重新初始化应用;冰冻并清除可能重要的状态信息。

  • TCP/IP安全问题:目前DNP3可以在通用计算机和通用操作系统上实现,运行于TCP/IP协议之上,这样TCP/IP协议自身的安全问题就会不可避免地影响系统网络安全。非法网络数据获取中间人、拒绝服务、IP欺骗等互联网中常用的攻击方法都会威胁DNP3系统的安全。

加强工业网络方法有以下这些:

  • 工业主机白名单控制:工业主机由于长期不间断运行,不能及时打补丁,并且受到联网条件的限制,无法实时更新病毒库,因此传统杀毒机制不适用于工业主机。比较有效的方式是采用白名单控制技术,对工业软件相关的进程文件进行扫描识别,为每个可信文件生成唯一的特征码,特征码的集合构成特征库,即白名单。只有白名单内的软件才可以运行,其他进程都被阻止,以防止病毒、木马、违规软件的攻击。

  • 工控协议识别与控制:为了保障数据传输的可靠性与实时性,工业生产网已发展了多套成熟的通信协议,主流的有几十种,大致分为工业总线协议和工业以太网协议两大类,如Modbus、S7、OPC、Profinet、IEC104等。工控协议的识别能力是安全设备工作的基础,也是评价产品能力的重要指标。

  • 工控漏洞利用识别与防护:工控系统漏洞是工控网络安全问题的主要来源。由于工控设备很少升级或者不升级,因此普遍存在可被攻击的漏洞,而由于技术的专业性和封闭性,这些漏洞很容易被作为0day利用。因此工控安全产品对工控漏洞利用行为的识别能力,以及相应的防护能力,是工控安全防护能力建设的核心。

  • 工控网络流量采集与分析:获取网络流量是发现网络攻击的前提,流量采集与分析广泛应用于网络安全方案,是一项比较成熟的技术。对于工控网络,除了基本的流量识别与统计分析外,还需要理解生产过程的操作功能码,根据业务逻辑判断是否发生异常。此外,根据设备间通信的规律建立流量基线模型,对多源数据进行关联分析,能够有效地识别异常行为和网络攻击。

  • 工业网络安全态势感知:态势感知是安全防御的重要手段,对于工控网络,通过安全态势感知平台,可以直观地了解网络中的资产分布、漏洞分布、网络攻击事件,对网络的整体风险水平进行量化评估。态势感知平台需要多种核心能力支持,包括完善的数据获取能力、大数据分析与建模能力、网络攻击溯源分析能力、安全事件闭环处理能力等,是工控网络安全防护的核心产品。